Lazy Narrowing with Parametric Order Sorted Types
نویسندگان
چکیده
Recently, a model theoretic semantics for lazy functional programming combining parametric and inclusion polymorphism has been proposed in 2]. The aim of the present work is to provide the previous one with the incorporation of a typed lazy narrowing calculus for goal solving which combines lazy uniication, sharing and type checking at run-time. Furthermore, we state soundness and completeness results of the goal solving procedure w.r.t. the typed rewriting calculi presented in 2] which were proved to be also sound and complete w.r.t. the notion of model in 2]. Thus, all theoretical results described there are also preserved in this framework.
منابع مشابه
Improving Computations in a Typed Functional Logic Language
We propose an implementation of a functional logic language with parametric order sorted types by translating typed lazy narrowing into Prolog, and establishing a reasonable strategy of combination of data and type constraints solving. By means of this translation, we describe how types can be used at run-time to prune the search space of solutions of a goal. Moreover, we present type inference...
متن کاملHigher-Order Lazy Narrowing Calculus: A Solver for Higher-Order Equations
This paper introduces a higher-order lazy narrowing calculus (HOLN for short) that solves higher-order equations over the domain of simply typed λ-terms. HOLN is an extension and refinement of Prehofer’s higher-order narrowing calculus LN using the techniques developed in the refinement of a first-order lazy narrowing calculus LNC. HOLN is defined to deal with both unoriented and oriented equat...
متن کاملSemantics and Types in Functional Logic Programming
The rewriting logic CRWL has been proposed as a semantic framework for higher-order functional logic programming, using applicative rewriting systems as programs and lazy narrowing as the goal solving procedure. We present an extension of CRWL with a polymorphic type system, and we investigate the consequences of type discipline both at the semantic level and at the operational level. Semantica...
متن کاملCombining Lazy Narrowing and Simplification
Languages that integrate functional and logic programming styles with a complete operational semantics are based on narrowing. In order to avoid useless computations and to deal with innnite data structures , lazy narrowing strategies have been proposed in the past. This paper presents an important improvement of lazy narrowing by incorporating deterministic simpliication steps into lazy narrow...
متن کاملLogic Programming over Polymorphically Order-Sorted Types
This thesis presents the foundations for relational logic programming over polymorphically order-sorted data types. This type discipline combines the notion of parametric polymorphism, which has been developed for higher-order functional programming, with the notion of order-sorted typing, which has been developed for equational rst-order speci cation and programming. Polymorphically order-sort...
متن کامل